﻿/***********************************************************************

 * 作者：疯狂秀才 QQ：1055818239
 * 讨论群：112044258、32994605、36534121、56271061
 * 创建日期：2011/1/17

 * 广告：本人承接各类大中小型管理系统的软件的设计与开发，有需要的朋友联系我啦~~~~

 **********************************************************/



$(function () {
    InitLeftMenu();
    tabClose();
    tabCloseEven();


    /*
     if(!$('#tabs').tabs('exists',"疯狂秀才")){
     $('#tabs').tabs('add',{
     title:"疯狂秀才",
     content:createFrame("welcome.jsp"),
     closable:false,
     width: $('#mainPanle').width() - 10,
     height: $('#mainPanle').height() - 26
     });
     }else{
     $('#tabs').tabs('select',"疯狂秀才");
     //		$('#mm-tabupdate').click();
     }
     */

//	tabClose();

    /*
     $('#tabs').tabs('add',{
     title:'疯狂秀才',
     content:createFrame('http://hxling.cnblogs.com'),
     width: $('#mainPanle').width() - 10,
     height: $('#mainPanle').height() - 26
     }).tabs({
     onSelect: function (title) {
     var currTab = $('#tabs').tabs('getTab', title);
     var iframe = $(currTab.panel('options').content);

     var src = iframe.attr('src');
     if(src)
     $('#tabs').tabs('update', { tab: currTab, options: { content: createFrame(src)} });

     }
     });
     */
//    $('#tabs').tabs({
//        onSelect: function (title) {
//            if (title == "货品管理") {
//                refreshTab({tabTitle: title});
//            } else if (title == "二维码产品信息管理") {
//                refreshTab({tabTitle: title});
//            } else if (title == "标签印制接收") {
//                refreshTab({tabTitle: title});
//            } else if (title == "标签监贴/张贴") {
//                refreshTab({tabTitle: title});
//            } else if (title == "商务报检代理") {
//                refreshTab({tabTitle: title});
//            } else if (title == "备案变更") {
//                refreshTab({tabTitle: title});
//            }
//        }
//    });

})

//初始化左侧
function InitLeftMenu() {
    $("#nav").accordion({animate: false});
    //alert();
    $.each(_menus.menus, function (i, n) {
        var menulist = '';
        //alert(i+"==="+n);
        menulist += '<ul>';
        $.each(n.menus, function (j, o) {
            menulist += '<li><div><a ref="' + o.menuid + '" href="#" rel="' + o.url + '" ><span class="icon ' + o.icon + '" >&nbsp;</span><span class="nav">' + o.menuname + '</span></a></div></li> ';
        })
        menulist += '</ul>';

        $('#nav').accordion('add', {
            title: n.menuname,
            content: menulist,
            iconCls: 'icon ' + n.icon
        });

    });

    $('.easyui-accordion li a').click(function () {
        var tabTitle = $(this).children('.nav').text();

        var url = $(this).attr("rel");
        var menuid = $(this).attr("ref");
        var icon = getIcon(menuid, icon);

        addTab(tabTitle, url, icon, menuid);
        $('.easyui-accordion li div').removeClass("selected");
        $(this).parent().addClass("selected");
    }).hover(function () {
        $(this).parent().addClass("hover");
    }, function () {
        $(this).parent().removeClass("hover");
    });

    //选中第一个
    var panels = $('#nav').accordion('panels');
    var t = panels[0].panel('options').title;
    $('#nav').accordion('select', t);
}
//获取左侧导航的图标
function getIcon(menuid) {
    var icon = 'icon ';
    $.each(_menus.menus, function (i, n) {
        $.each(n.menus, function (j, o) {
            if (o.menuid == menuid) {
                icon += o.icon;
            }
        })
    })

    return icon;
}

function addTab(subtitle, url, icon, menuid) {
    if (!$('#tabs').tabs('exists', subtitle)) {
        $('#tabs').tabs('add', {
            id: menuid,
            title: subtitle,
            content: createFrame(menuid, url),
            closable: true,
            icon: icon,
            width: $('#mainPanle').width() - 10,
            height: $('#mainPanle').height() - 26
        });
    } else {
        $('#tabs').tabs('select', subtitle);
//		$('#mm-tabupdate').click();
    }
	tabClose();
}

function createFrame(id, url) {
    var s = '<iframe name="' + id + '" scrolling="no" frameborder="0"  src="' + url + '" style="width:100%;height:100%;"></iframe>';
    return s;
}

function tabClose() {
	/*双击关闭TAB选项卡*/
	$(".tabs-inner").dblclick(function(){
		var subtitle = $(this).children(".tabs-closable").text();
		$('#tabs').tabs('close',subtitle);
	})
	/*为选项卡绑定右键*/
	$(".tabs-inner").bind('contextmenu',function(e){
		$('#mm').menu('show', {
			left: e.pageX,
			top: e.pageY
		});

		var subtitle =$(this).children(".tabs-closable").text();

		$('#mm').data("currtab",subtitle);
		$('#tabs').tabs('select',subtitle);
		return false;
	});
}
//绑定右键菜单事件
function tabCloseEven() {
	//刷新
	$('#mm-tabupdate').click(function(){
		var currTab = $('#tabs').tabs('getSelected');
		var url = $(currTab.panel('options').content).attr('src');
		$('#tabs').tabs('update',{
			tab:currTab,
			options:{
				content:createFrame(url)
			}
		})
	})
	//关闭当前
	$('#mm-tabclose').click(function(){
		var currtab_title = $('#mm').data("currtab");
		$('#tabs').tabs('close',currtab_title);
	})
	//全部关闭
	$('#mm-tabcloseall').click(function(){
		$('.tabs-inner span').each(function(i,n){
			var t = $(n).text();
			$('#tabs').tabs('close',t);
		});
	});
	//关闭除当前之外的TAB
	$('#mm-tabcloseother').click(function(){
		$('#mm-tabcloseright').click();
		$('#mm-tabcloseleft').click();
	});
	//关闭当前右侧的TAB
	$('#mm-tabcloseright').click(function(){
		var nextall = $('.tabs-selected').nextAll();
		if(nextall.length==0){
			//msgShow('系统提示','后边没有啦~~','error');
			return false;
		}
		nextall.each(function(i,n){
			var t=$('a:eq(0) span',$(n)).text();
			$('#tabs').tabs('close',t);
		});
		return false;
	});
	//关闭当前左侧的TAB
	$('#mm-tabcloseleft').click(function(){
		var prevall = $('.tabs-selected').prevAll();
		if(prevall.length==0){
			return false;
		}
		prevall.each(function(i,n){
			var t=$('a:eq(0) span',$(n)).text();
			$('#tabs').tabs('close',t);
		});
		return false;
	});
}

//弹出信息窗口 title:标题 msgString:提示信息 msgType:信息类型 [error,info,question,warning]
function msgShow(title, msgString, msgType) {
    $.messager.alert(title, msgString, msgType);
}
/**
 * 刷新tab
 * @param cfg
 *example: {tabTitle:'tabTitle',url:'refreshUrl'}
 *如果tabTitle为空，则默认刷新当前选中的tab
 *如果url为空，则默认以原来的url进行reload
 */
function refreshTab(cfg) {
    var refresh_tab = cfg.tabTitle ? $('#tabs').tabs('getTab', cfg.tabTitle) : $('#tabs').tabs('getSelected');
    if (refresh_tab && refresh_tab.find('iframe').length > 0) {
        var _refresh_ifram = refresh_tab.find('iframe')[0];
        var refresh_url = cfg.url ? cfg.url : _refresh_ifram.src;
        //_refresh_ifram.src = refresh_url;
        _refresh_ifram.contentWindow.location.href = refresh_url;
    }
}
//关闭活动的窗口
function closeActiveTab() {
    var title = parent.$('#tabs').tabs('getSelected').panel("options").title;
    $('#tabs').tabs('close', title);
}
//关闭当前标签
//并且切换到其他的标签（若其他标签已打开的话）
//然后刷新标签页中的数据
function closeOpenAndSearch(newPageName) {
    closeActiveTab();
    $('#tabs').tabs('select', newPageName);
    var id = $('#tabs').tabs('getSelected').panel("options").id;
    $("[name=" + id + "]")[0].contentWindow.dosearch();
}

function closeOpenAndSearch3(newPageName,formname) {
    closeActiveTab();
    $('#tabs').tabs('select', newPageName);
    var id = $('#tabs').tabs('getSelected').panel("options").id;
    $("[name=" + id + "]")[0].contentWindow.dosearch(formname);
}
